home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1998 April: Mac OS SDK / Dev.CD Apr 98 SDK1.toast / Development Kits (Disc 1) / QuickDraw 3D / Samples / SampleCode / Plug-in - WireFrame Renderer / SR_ConfigData.c < prev    next >
Encoding:
C/C++ Source or Header  |  1997-08-14  |  2.2 KB  |  89 lines  |  [TEXT/MPS ]

  1. /******************************************************************************
  2.  **                                                                             **
  3.  **     Module:        SR_ConfigData.c                                             **
  4.  **                                                                          **
  5.  **                                                                          **
  6.  **     Purpose:     Generic sample renderer routines                          **
  7.  **                                                                          **
  8.  **                                                                          **
  9.  **                                                                          **
  10.  **     Copyright (C) 1996-1997 Apple Computer, Inc.  All rights reserved.     **
  11.  **                                                                          **
  12.  **                                                                          **
  13.  *****************************************************************************/
  14. #include <assert.h>
  15.  
  16. #include <string.h>
  17.  
  18. #include "QD3D.h"
  19.  
  20. #include "SR.h"
  21. #include "SR_ConfigData.h"
  22.  
  23. #define    LOCAL_BUFFER_SIZE    sizeof(short)
  24.  
  25. /*===========================================================================*\
  26.  *
  27.  *    Routine:    SR_GetConfigurationData()
  28.  *
  29.  *    Comments:    
  30.  *
  31. \*===========================================================================*/
  32.  
  33. TQ3Status SR_GetConfigurationData(
  34.     TQ3RendererObject            renderer, 
  35.     unsigned char                *dataBuffer, 
  36.     unsigned long                bufferSize,
  37.     unsigned long                *actualDataSize,    
  38.     void                        *rendererPrivate)
  39. {
  40.     UNUSED(renderer);
  41.     
  42.     *actualDataSize = LOCAL_BUFFER_SIZE;
  43.     
  44.     if (dataBuffer != NULL)  {
  45.         if (bufferSize >= LOCAL_BUFFER_SIZE) {
  46.             memcpy(
  47.                 (char *) dataBuffer, 
  48.                 (char *) &(((TSRPrivate *) rendererPrivate)->dummyConfigData),
  49.                 LOCAL_BUFFER_SIZE);
  50.         } else {
  51.             memcpy(
  52.                 (char *) dataBuffer,
  53.                 (char *) &(((TSRPrivate *) rendererPrivate)->dummyConfigData),
  54.                 bufferSize);
  55.             *actualDataSize = bufferSize;
  56.         }
  57.     }
  58.     
  59.     return (kQ3Success);
  60. }
  61.  
  62.  
  63. /*===========================================================================*\
  64.  *
  65.  *    Routine:    SR_GetConfigurationData()
  66.  *
  67.  *    Comments:    
  68.  *
  69. \*===========================================================================*/
  70.  
  71. TQ3Status SR_SetConfigurationData(
  72.     TQ3RendererObject            renderer, 
  73.     unsigned char                *dataBuffer, 
  74.     unsigned long                bufferSize,    
  75.     void                        *rendererPrivate)
  76. {
  77.     UNUSED(renderer);
  78.     
  79.     if (dataBuffer != NULL && bufferSize == LOCAL_BUFFER_SIZE) {
  80.         memcpy(
  81.             (char *) &(((TSRPrivate *) rendererPrivate)->dummyConfigData),
  82.             (char *) dataBuffer, 
  83.             bufferSize);
  84.         return (kQ3Success);
  85.     }
  86.     
  87.     return (kQ3Failure);
  88. }
  89.